﻿using Pay.DTO;
using Pay.TO;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Pay.IService
{
    public interface IMerchIntroduceService
    {
        /// <summary>
        /// 商家介绍列表
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        PagedResult<merch_introduce_dto> GetMerchIntroduces(MerchIntroduceQuery query);

        /// <summary>
        /// 获得商家介绍
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        merch_introduce_dto GetMerchIntroduce(long id);

        /// <summary>
        /// 新增商家介绍
        /// </summary>
        /// <param name="dto"></param>
        /// <returns></returns>
        int AddMerchIntroduce(merch_introduce_dto dto);

        /// <summary>
        /// 更新商家介绍
        /// </summary>
        /// <param name="dto"></param>
        /// <returns></returns>
        int UpdateMerchIntroduce(merch_introduce_dto dto);

        /// <summary>
        /// 删除商家介绍
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        int DeleteMerchIntroduce(long id);

        /// <summary>
        /// 修改商家状态
        /// </summary>
        /// <param name="id"></param>
        /// <param name="status"></param>
        /// <returns></returns>
        int UpdateMerchIntroduceStatus(long id, int status);

        /// <summary>
        /// 修改商家是否推荐
        /// </summary>
        /// <param name="id"></param>
        /// <param name="isRecommend"></param>
        /// <returns></returns>
        int UpdateMerchIntroduceIsRecommend(long id, bool isRecommend);

        #region API接口
        /// <summary>
        /// 获得APP首页商家介绍列表
        /// </summary>
        /// <returns></returns>
        List<merch_dto> GetAppIndexMerchIntroduceList();

        /// <summary>
        /// 获得APP商家介绍列表
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        PagedResult<merch_dto> GetAppMerchIntroducePageList(PageQuery query);

        /// <summary>
        /// App获得商家介绍详情
        /// </summary>
        /// <param name="id"></param>
        /// <param name="userId"></param>
        /// <returns></returns>
        merch_detail_dto AppGetMerchIntroduce(long id, long userId);

        #endregion
    }
}
